package com.circle.interests.biz.core;


import com.circle.interests.biz.core.protocol.InventoryAllocateCondition;
import com.circle.interests.biz.core.protocol.InventoryConsumeCondition;
import com.circle.interests.biz.core.protocol.InventoryRollbackCondition;

/**
 * 奖品库存管理服务
 *
 * @author zhou
 * @date 2021/12/7
 */
public interface PrizeInventoryManageService {

    /**
     * 分配库存
     */
    void allocateInventory(InventoryAllocateCondition condition);

    /**
     * 消耗库存
     */
    boolean consumeInventory(InventoryConsumeCondition condition);

    /**
     * 回收库存
     */
    void recycleInventory(InventoryRollbackCondition condition);

}
